package ml;

// TODO: Load parameters from configure file

public interface MLConstants {
	/*
	 * Training Parameters
	 */
	// parameters for EURUSD_H1
	public static final int TIME_INTERVAL = 72; // 72 hours
	public static final double MIN_PROFIT = 0.00960;
	public static final double MAX_LOSS = 0.00320;

	public static final double TRAINING_SAMPLES_RATE = 0.1;

	public static final double MIN_TRAIN_ERROR_RATE = 1E-12;

	public static final int TRAINING_CYCLES = 300;

	// 训练过程中找到的门限还需要适当放大一点
	public static final double THRESHOLD_BIAS = 1E-8;

	/*
	 * Trading Parameters
	 */
	// parameters for EURUSD_H1
	public static final double SPREAD = 0.00030;
	public static final double TAKE_PROFIT = 30*MIN_PROFIT;
	public static final double STOP_LOSS = MAX_LOSS;
	public static final int DECISION_TIME = 1;
	public static final double DECISION_RATE = 0.6;
	public static final double MIN_LEVERAGE = 1.0;
	public static final double MAX_LEVERAGE = 10.0;
	public static final double FIXED_VOLS = -100000; // if FIXED_VOLS is minus, then use LEVERAGE
	public static final double MAX_VOLS = 10000000;
	
	// TODO: Currently MAX_ORDERS_NUM is of no use.
	public static final int MAX_ORDERS_NUM = 3;
	
	public static final int JUDGE_STRATEGY_NUM = 1;
	public static final double BAD_STRATEGY_THRESHOLD = -0.01 * STOP_LOSS;
	public static final double GOOD_STRATEGY_THRESHOLD = 0.01 * STOP_LOSS;
}
